package com.cskaoyan._03equals.notice;

/**
 * @description:
 * @author: 景天
 * @date: 2023/2/14 16:10
 **/
/*
浮点数比较特殊，它具有规格化和非规格化的区别，还有非数(NaN)，
无穷大，无穷小很多特殊的概念，正常情况下，
如果仅仅比较数值，用==比较相等是够用的。但为了避免因浮点数特殊值，而出现的错误。
实际开发中，从严谨角度出发，浮点数的比较仍然建议使用，
对应包装类型的compare方法去比较浮点数的大小：

1. Float.compare(float a,float b)
2. Double.compare(double a,doublet b)

这两个方法在,a < b时返回-1(负数)，在a>b时，返回1(正数)，只有在两个浮点数相等时，才会返回0
 */
public class Demo {
    public static void main(String[] args) {
        double d1 = 1.0;
        double d2 = 0.9;
        System.out.println(d1-d2);

        // 使用基本数据类型的包装类型进行比较
        int num = Double.compare(0.1, d1 - d2);
        System.out.println(num);
    }
}
